package com.demo.java.OD1_50.OD10;

import java.util.*;
import java.util.Scanner;

/**
 * @author bug菌
 * @Source 公众号：猿圈奇妙屋
 * @des： 组成最大数问题
 * @url： https://blog.csdn.net/weixin_43970743/article/details/145503752
 */
public class OdMain {

    public static void main(String[] args) {
        try (Scanner sc = new Scanner(System.in)) {
            // 读取输入数字
            String input = sc.nextLine();
            String[] numbers = input.split(",");

            // 自定义排序规则：如果拼接a + b比b + a大，则a排在前面
            Arrays.sort(numbers, new Comparator<String>() {
                @Override
                public int compare(String a, String b) {
                    // 拼接a + b和b + a，进行字典序比较
                    return (b + a).compareTo(a + b);
                }
            });

            // 拼接排序后的字符串
            StringBuilder result = new StringBuilder();
            for (String num : numbers) {
                result.append(num);
            }

            // 处理特殊情况，避免输出多个0
            if (result.charAt(0) == '0') {
                System.out.println("0");
            } else {
                System.out.println(result.toString());
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
